\hypertarget{class_two_joystick_drive_service}{\section{Two\-Joystick\-Drive\-Service$<$ Drive, Value, Handler $>$ Class Template Reference}
\label{class_two_joystick_drive_service}\index{Two\-Joystick\-Drive\-Service$<$ Drive, Value, Handler $>$@{Two\-Joystick\-Drive\-Service$<$ Drive, Value, Handler $>$}}
}


{\ttfamily \#include $<$Two\-Joystick\-Drive\-Service.\-hpp$>$}

Inheritance diagram for Two\-Joystick\-Drive\-Service$<$ Drive, Value, Handler $>$\-:\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[height=3.000000cm]{class_two_joystick_drive_service}
\end{center}
\end{figure}
\subsection*{Public Types}
\begin{DoxyCompactItemize}
\item 
\hypertarget{class_two_joystick_drive_service_a9ec0b2306df07335137f5722340f41b6}{typedef \hyperlink{struct_two_joystick_value}{Two\-Joystick\-Value} {\bfseries Input}}\label{class_two_joystick_drive_service_a9ec0b2306df07335137f5722340f41b6}

\item 
\hypertarget{class_two_joystick_drive_service_ab07d132a6c4dc759f7a209cfb0677d08}{typedef Value {\bfseries Output}}\label{class_two_joystick_drive_service_ab07d132a6c4dc759f7a209cfb0677d08}

\item 
\hypertarget{class_two_joystick_drive_service_aae463b831a105000bafec3bbb8c5f87c}{typedef \hyperlink{class_filter}{Filter}$<$ \hyperlink{struct_two_joystick_value}{Input}, Output $>$ {\bfseries Filter}}\label{class_two_joystick_drive_service_aae463b831a105000bafec3bbb8c5f87c}

\end{DoxyCompactItemize}
\subsection*{Public Member Functions}
\begin{DoxyCompactItemize}
\item 
\hypertarget{class_two_joystick_drive_service_abca2550301892723ba58412c8c100170}{{\bfseries Two\-Joystick\-Drive\-Service} (Drive \&drive, boost\-::shared\-\_\-ptr$<$ \hyperlink{class_filter}{Filter} $>$ drive\-Mode, Generic\-H\-I\-D \&left\-Joystick, Generic\-H\-I\-D \&right\-Joystick)}\label{class_two_joystick_drive_service_abca2550301892723ba58412c8c100170}

\item 
\hypertarget{class_two_joystick_drive_service_a94ccf4cbcf284db760dbee11373aa1ad}{{\bfseries Two\-Joystick\-Drive\-Service} (Drive \&drive, \hyperlink{class_filter}{Filter} $\ast$drive\-Mode, Generic\-H\-I\-D \&left\-Joystick, Generic\-H\-I\-D \&right\-Joystick, bool can\-Delete\-Drive\-Mode=false)}\label{class_two_joystick_drive_service_a94ccf4cbcf284db760dbee11373aa1ad}

\item 
\hypertarget{class_two_joystick_drive_service_a34a40be43adbf39a5a5fb28702b124ea}{{\footnotesize template$<$typename T $>$ }\\void {\bfseries Add\-Filter} (T $\ast$filter, bool can\-Delete\-Filter)}\label{class_two_joystick_drive_service_a34a40be43adbf39a5a5fb28702b124ea}

\item 
\hypertarget{class_two_joystick_drive_service_ace42e8c4980952b504ef2126276901d6}{{\footnotesize template$<$typename T $>$ }\\void {\bfseries Add\-Filter} (T filter)}\label{class_two_joystick_drive_service_ace42e8c4980952b504ef2126276901d6}

\end{DoxyCompactItemize}
\subsection*{Protected Member Functions}
\begin{DoxyCompactItemize}
\item 
virtual void \hyperlink{class_two_joystick_drive_service_aac337e302b872d3126366ceb966aec3c}{Handle\-Periodic} ()
\item 
virtual void \hyperlink{class_two_joystick_drive_service_a30d954d7a0e110e2333fd95d69631471}{Handle\-Stop} ()
\end{DoxyCompactItemize}
\subsection*{Protected Attributes}
\begin{DoxyCompactItemize}
\item 
\hypertarget{class_two_joystick_drive_service_ab7c6267f549b390ffbb22bb30ad9f256}{Drive \& {\bfseries m\-\_\-drive}}\label{class_two_joystick_drive_service_ab7c6267f549b390ffbb22bb30ad9f256}

\item 
\hypertarget{class_two_joystick_drive_service_a81e8852990372cbcf874dc17a67243a9}{\hyperlink{class_compound_filter}{Compound\-Filter}$<$ \hyperlink{struct_two_joystick_value}{Input}, Output $>$ {\bfseries m\-\_\-filter}}\label{class_two_joystick_drive_service_a81e8852990372cbcf874dc17a67243a9}

\item 
\hypertarget{class_two_joystick_drive_service_a3ec34dfe73ccd3f4b77678b46f1842b6}{Generic\-H\-I\-D \& {\bfseries m\-\_\-joystick\-Left}}\label{class_two_joystick_drive_service_a3ec34dfe73ccd3f4b77678b46f1842b6}

\item 
\hypertarget{class_two_joystick_drive_service_a66a41794c518f85eca93afc6fed8433d}{Generic\-H\-I\-D \& {\bfseries m\-\_\-joystick\-Right}}\label{class_two_joystick_drive_service_a66a41794c518f85eca93afc6fed8433d}

\end{DoxyCompactItemize}


\subsection{Detailed Description}
\subsubsection*{template$<$typename Drive, typename Value, void($\ast$)(\-Drive \&drive, const Value \&value) Handler$>$class Two\-Joystick\-Drive\-Service$<$ Drive, Value, Handler $>$}

The Two\-Joystick\-Drive\-Controller drives using input from two joysticks.


\begin{DoxyTemplParams}{Template Parameters}
{\em Drive} & Needs to have a function called Stop that takes no arguments. \\
\hline
{\em Handler} & \\
\hline
\end{DoxyTemplParams}


\subsection{Member Function Documentation}
\hypertarget{class_two_joystick_drive_service_aac337e302b872d3126366ceb966aec3c}{\index{Two\-Joystick\-Drive\-Service@{Two\-Joystick\-Drive\-Service}!Handle\-Periodic@{Handle\-Periodic}}
\index{Handle\-Periodic@{Handle\-Periodic}!TwoJoystickDriveService@{Two\-Joystick\-Drive\-Service}}
\subsubsection[{Handle\-Periodic}]{\setlength{\rightskip}{0pt plus 5cm}template$<$typename Drive, typename Value, void($\ast$)(\-Drive \&drive, const Value \&value) Handler$>$ virtual void {\bf Two\-Joystick\-Drive\-Service}$<$ Drive, Value, Handler $>$\-::Handle\-Periodic (
\begin{DoxyParamCaption}
{}
\end{DoxyParamCaption}
)\hspace{0.3cm}{\ttfamily [inline]}, {\ttfamily [protected]}, {\ttfamily [virtual]}}}\label{class_two_joystick_drive_service_aac337e302b872d3126366ceb966aec3c}
This function should be overridden to handle the periodic \hyperlink{class_service}{Service} tasks. It will be called periodically when the this controller is started. 

Reimplemented from \hyperlink{class_service_a9604d04295202019e9a15f8c93bb31c6}{Service}.

\hypertarget{class_two_joystick_drive_service_a30d954d7a0e110e2333fd95d69631471}{\index{Two\-Joystick\-Drive\-Service@{Two\-Joystick\-Drive\-Service}!Handle\-Stop@{Handle\-Stop}}
\index{Handle\-Stop@{Handle\-Stop}!TwoJoystickDriveService@{Two\-Joystick\-Drive\-Service}}
\subsubsection[{Handle\-Stop}]{\setlength{\rightskip}{0pt plus 5cm}template$<$typename Drive, typename Value, void($\ast$)(\-Drive \&drive, const Value \&value) Handler$>$ virtual void {\bf Two\-Joystick\-Drive\-Service}$<$ Drive, Value, Handler $>$\-::Handle\-Stop (
\begin{DoxyParamCaption}
{}
\end{DoxyParamCaption}
)\hspace{0.3cm}{\ttfamily [inline]}, {\ttfamily [protected]}, {\ttfamily [virtual]}}}\label{class_two_joystick_drive_service_a30d954d7a0e110e2333fd95d69631471}
This function should be overridden to handle the \hyperlink{class_service}{Service} stopping. 

Reimplemented from \hyperlink{class_service_a38a2e9e764f74fe0da634d2252ee8744}{Service}.



The documentation for this class was generated from the following file\-:\begin{DoxyCompactItemize}
\item 
C\-:/\-Users/\-Sam/\-Projects/\-F\-R\-C/\-Libraries/\-Fpk/\-Entech-\/\-Fpk-\/\-Subscribers/\-Entech-\/\-Fpk/\-Services/Two\-Joystick\-Drive\-Service.\-hpp\end{DoxyCompactItemize}
